Appearance
解析 MSOffice Word 有序列表样式
最近在处理一个功能: 复制
Word
中的有序列表,粘贴到我们的WebOffice
中
中文有序列表常用样式如下:
txt
一、有序列表1
二、有序列表2
三、有序列表3
壹、有序列表1
贰、有序列表2
叁、有序列表3
甲、有序列表1
乙、有序列表2
丙、有序列表3
微软 DocumentFormat 文档
下面的链接中详细的说明了
NumberFormatValues
样式
解析字段
在处理粘贴式,获取粘贴的 html
进行样式解析,其中:
mso-level-number-format
javascript
mso-level-number-format:chinese-counting
这种样式使用中文数字,例如一、二、三、四等。它是较为常见的中文文档有序列表样式,使用中文数字对文档进行编号
其他字段
这里我直接从 Word
文件解压的 numbering.xml
可以看到有序列表有哪些字段:
xml
...
<w:lvl w:ilvl="0">
<w:start w:val="1"/>
<w:numFmt w:val="japaneseCounting" /><w:isLgl w:val="false"/><w:suff w:val="tab"/>
<w:lvlText w:val="%1、"/>
<w:lvlJc w:val="left" />
<w:pPr>
...
可以看到除了 mso-level-number-format
定义了有序列表样式外,还有如下一些字段需要进行适配:
<w:lvl w:ilvl="0">
: 定义编号的第一个级别(ilvl=0
表示第一级别)<w:start w:val="1"/>
: 指定该级别的编号从1开始。<w:numFmt w:val="japaneseCounting"/>
: 使用日文计数格式。这意味着文档中的编号将采用日文的计数方式,例如:“一、二、三、...”<w:isLgl w:val="false"/>
: 表示不使用法律编号(legal numbering
)<w:suff w:val="tab"/>
: 指定编号后的后缀是制表符(Tab
)<w:lvlText w:val="%1、"/>
: 设置编号文本格式,使用%1、
表示编号后跟一个顿号<w:lvlJc w:val="left"/>
: 将编号文本左对齐<w:pPr>
: 段落属性标签